home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / xa / MetaModelCellDialog$MetaTableModel.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  3.6 KB  |  106 lines

  1. package com.extensibility.xa;
  2.  
  3. import com.extensibility.util.Debug;
  4. import com.extensibility.util.XASet;
  5. import com.extensibility.xml.DTDUtilities;
  6. import com.extensibility.xml.ParserException;
  7. import com.extensibility.xml.XMLStringUtilities;
  8. import java.util.Vector;
  9. import javax.swing.event.TableModelEvent;
  10. import javax.swing.table.AbstractTableModel;
  11.  
  12. class MetaModelCellDialog$MetaTableModel extends AbstractTableModel {
  13.    // $FF: synthetic field
  14.    final MetaModelCellDialog this$0;
  15.    XASet elementRefs;
  16.  
  17.    MetaModelCellDialog$MetaTableModel(MetaModelCellDialog var1) {
  18.       this.this$0 = var1;
  19.    }
  20.  
  21.    void resetData() {
  22.       this.this$0.model.recalcElementRefs();
  23.       TableModelEvent var1 = new TableModelEvent(this, 0, this.getRowCount() - 1, -1, 1);
  24.       ((AbstractTableModel)this).fireTableChanged(var1);
  25.    }
  26.  
  27.    public int getRowCount() {
  28.       return this.getElementRefs().size();
  29.    }
  30.  
  31.    public int getColumnCount() {
  32.       return this.this$0.extraUI.getExtraColumnCount(2) + 1;
  33.    }
  34.  
  35.    public String getColumnName(int var1) {
  36.       return var1 == 0 ? "Element" : this.this$0.extraUI.getColumnName(2, var1 - 1);
  37.    }
  38.  
  39.    public Class getColumnClass(int var1) {
  40.       return var1 == 0 ? Class.forName("java.lang.String") : this.this$0.extraUI.getColumnClass(2, var1 - 1);
  41.    }
  42.  
  43.    public Object getValueAt(int var1, int var2) {
  44.       if (var2 == 0) {
  45.          return this.getElementRefs().elementAt(var1);
  46.       } else {
  47.          String var3 = (String)this.getElementRefs().elementAt(var1);
  48.          return this.this$0.getElemDecl().getCPMetaProp(var3, this.this$0.extraUI.getColumnMetaProp(2, var2 - 1));
  49.       }
  50.    }
  51.  
  52.    public void setValueAt(Object var1, int var2, int var3) {
  53.       Debug.assert(var3 > 0);
  54.       if (var1 == null || !var1.equals(this.getValueAt(var2, var3))) {
  55.          String var4 = (String)var1;
  56.          if (var4 != null && var4.length() == 0) {
  57.             var4 = null;
  58.          }
  59.  
  60.          String var5 = (String)this.getElementRefs().elementAt(var2);
  61.          String var6 = this.this$0.extraUI.getColumnMetaProp(2, var3 - 1);
  62.          if (var4 == null) {
  63.             this.this$0.getElemDecl().removeCPMetaProp(var5, var6);
  64.          } else {
  65.             this.this$0.getElemDecl().putCPMetaProp(var5, var6, var4);
  66.          }
  67.  
  68.       }
  69.    }
  70.  
  71.    public boolean isCellEditable(int var1, int var2) {
  72.       return var2 > 0;
  73.    }
  74.  
  75.    void recalcElementRefs() {
  76.       this.elementRefs = new XASet();
  77.       Vector var1 = DTDUtilities.extractNames(this.this$0.getText());
  78.  
  79.       for(int var2 = 0; var2 < var1.size(); ++var2) {
  80.          this.elementRefs.addToSet(var1.elementAt(var2));
  81.       }
  82.  
  83.    }
  84.  
  85.    XASet getElementRefs() {
  86.       if (this.elementRefs == null) {
  87.          this.recalcElementRefs();
  88.       }
  89.  
  90.       return this.elementRefs;
  91.    }
  92.  
  93.    ParserException validateCell(String var1, int var2, int var3) {
  94.       if (this.this$0.extraUI.isColumnMetaPropAttrs(2, var3 - 1)) {
  95.          try {
  96.             XMLStringUtilities.getNameValuePairs(var1);
  97.          } catch (StringIndexOutOfBoundsException var6) {
  98.             ParserException var5 = new ParserException(97, "");
  99.             return var5;
  100.          }
  101.       }
  102.  
  103.       return null;
  104.    }
  105. }
  106.